ОПТИМАЛЬНЕ КЕРУВАННЯ ПРОЦЕСАМИ З ЗАСТОСУВАННЯМ МЕТОДУ ЛІНІЙНОГО ПРОГРАМУВАННЯ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Систем управління
Кафедра:
Не вказано

Інформація про роботу

Рік:
2012
Тип роботи:
Лабораторна робота
Предмет:
Інші
Група:
КН-32

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА” АВТОМАТИЗОВАНІ СИСТЕМИ УПРАВЛІННЯ Лабораторна робота №1 ОПТИМАЛЬНЕ КЕРУВАННЯ ПРОЦЕСАМИ З ЗАСТОСУВАННЯМ МЕТОДУ ЛІНІЙНОГО ПРОГРАМУВАННЯ Мета роботи Вивчення і застосування методу лінійного програмування для рішення задач оптимального керування, у яких цільова функція, модель процесу й обмеження є лінійними функціями. Хід роботи ознайомитися з теоретичними зведеннями і прикладами використання методу лінійного програмування для рішення задач оптимального керування; представити цільову функцію і систему обмежень у вигляді функцій змінних керування шляхом заміни змінних стану змінних керування; скласти програму рішення задачі на мові delphi вивести на друк максимальне і мінімальне значення цільової функції, значення змінних керування; Індивідуальне завдання Варіант 1 Цільова функція  Модель процесу  Обмеження  Код програми unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DBCtrls; type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label2: TLabel; Edit4: TEdit; Edit5: TEdit; Edit6: TEdit; Label3: TLabel; Label4: TLabel; Edit7: TEdit; Edit8: TEdit; Edit9: TEdit; Label5: TLabel; Edit10: TEdit; Button1: TButton; Button2: TButton; Button3: TButton; Edit11: TEdit; Edit12: TEdit; Label6: TLabel; Label7: TLabel; Label8: TLabel; Edit13: TEdit; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; Label15: TLabel; Label16: TLabel; Label17: TLabel; Button4: TButton; DBMemo1: TDBMemo; DBMemo2: TDBMemo; Label18: TLabel; DBMemo3: TDBMemo; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; mfx:array [1..3] of integer; mcy:array [1..2] of integer; msr:array [1..2] of integer; x:array [1..20] of Extended; y:array [1..20] of Extended; xn:array [1..20] of Extended; yn:array [1..20] of Extended; o1:array [1..40] of integer; o2:array [1..40] of integer; mob:array [1..20,1..5] of integer; mobr:array [1..20,1..4] of integer; n,i,j,z,k,g,g1,g2,f,b,k1,p,nb,q,bn:integer; max,min: Extended; implementation {$R *.dfm} procedure TForm1.Button2Click(Sender: TObject); begin mfx[1]:=strtoint(edit1.Text); mfx[2]:=strtoint(edit2.Text); mfx[3]:=strtoint(edit3.Text); mcy[1]:=strtoint(edit4.Text); mcy[2]:=strtoint(edit5.Text); n:=strtoint(edit6.Text); end; procedure TForm1.Button1Click(Sender: TObject); begin i:=i+1; mob[i][1]:=strtoint(edit7.Text); mob[i][2]:=strtoint(edit8.Text); mob[i][3]:=strtoint(edit9.Text); mob[i][4]:=strtoint(edit10.Text); if edit13.Text='>' then mob[i][5]:=0 else mob[i][5]:=1; edit7.Text:=''; edit8.Text:=''; edit9.Text:=''; edit10.Text:=''; edit13.Text:=''; end; procedure TForm1.FormCreate(Sender: TObject); begin i:=0; p:=0; end; procedure TForm1.Button3Click(Sender: TObject); begin i:=1; j:=0; k:=0; msr[1]:=mfx[3]*mcy[1]+mfx[1]; msr[2]:=mfx[3]*mcy[2]+mfx[2]; for i:=1 to n do begin if mob[i][1]=0 then begin mobr[i][1]:=mob[i][2]; mobr[i][2]:=mob[i][3]; mobr[i][3]:=mob[i][4]; mobr[i][4]:=mob[i][5]; end else begin mobr[i][1]:=mob[i][1]*mcy[1]+mob[i][2]; mobr[i][2]:=mob[i][1]*mcy[2]+mob[i][3]; mobr[i][3]:=mob[i][4]; mobr[i][4]:=mob[i][5]; end; end; z:=1; k:=1; for i:=1 to n-1 do begin z:=z+1; for j:=z to n do begin...
Антиботан аватар за замовчуванням

19.02.2013 22:02

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини